Aspect Refinement Ð Unifying AOP and Stepwise Refinement
نویسندگان
چکیده
Stepwise refinement (SWR) is fundamental to software engineering. As aspectoriented programming (AOP) is gaining momentum in software development, aspects should be considered in the light of SWR. In this paper, we elaborate the notion of aspect refinement that unifies AOP and SWR at the architectural level. To reflect this unification to the programming language level, we present an implementation technique for refining aspects based on mixin composition along with a set of language mechanisms for refining all kinds of structural elements of aspects in a uniform way (methods, pointcuts, advice). To underpin our proposal, we contribute a fully functional compiler on top of AspectJ, present a non-trivial, medium-sized case study, and derive a set of programming guidelines.
منابع مشابه
Aspect Refinement
Stepwise refinement (SWR) is fundamental to software engineering. As aspect-oriented programming (AOP) gains momentum in software development, aspects should be subject to SWR as well. In this paper, we introduce the notion of aspect refinement that unifies AOP and SWR. To reflect this unification to programming language level, we present an implementation technique for refining aspects based o...
متن کاملAspect Refinement and Bounded Quantification in Incremental Designs
This article investigates aspects in the context of the incremental software development, i.e. software product lines. Specifically, we propose the integration of aspects into AHEAD, an architectural model for feature-based product line development. We introduce the notion of aspect refinement based on Aspectual Mixin Layers, a novel technique for implementing features. Aspect refinement enable...
متن کاملAspect Refinement in Software Product Lines
This article investigates aspects in the context of the step-wise development of software product lines. Specifically, we propose the integration of aspects into AHEAD, an architectural model for feature-based product line development. We introduce the notion of aspect refinement based on Aspectual Mixin Layers, a technique for implementing features. Aspect refinement enables a programmer to ev...
متن کاملDie Rolle von Features und Aspekten in der Softwareentwicklung (The Role of Features and Aspects in Software Development)
Zusammenfassung Feature-orientierte Programmierung (FOP) und Aspekt-orientierte Programmierung (AOP) sind komplementäre Technologien. Obwohl beide auf die Modularität von so genannten querschneidenden Belangen abzielen, so tun sie dies auf unterschiedliche Art und Weise. Im Rahmen der Arbeit wurde beobachtet, dass FOP und AOP kombiniert werden können, um ihre individuellen Schwächen zu überwind...
متن کاملAn Aspect-Oriented Programming Language for Agile Software Development
This thesis proposes two new language constructs for aspect-oriented programming (AOP) and a new AOP language that provides those language constructs. AOP is useful for agile software development. However, existing AOP languages have not been used on agile software development yet. This is because existing AOP languages are not good enough for agile software development. This thesis first anali...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Journal of Object Technology
دوره 6 شماره
صفحات -
تاریخ انتشار 2007